#pragma once
#include "FoGGEDef.h"
#include "aTerminal.h"

namespace _FOGGE_
{
	namespace _UTIL_
	{
		class FileOutTerminal:
			public aTerminal
		{
		public:
			FileOutTerminal(foString name,foUInt size);
			~FileOutTerminal(void);
			void Write_Implement( LPCTSTR str );
			void Flush_Implement();

		protected:
			foString m_strCurrentLine;

			foString m_strLogFileName;

			std::queue<foString> m_History;

			foUInt m_uiQueueSIze;

			void ProcessCurrentLine();
		};
	}
}
